#ifndef Component_h__
#define Component_h__

#include <vector>
#include "Primitive.h"
#include "Transformation.h"
#include "Texture.h"
#include "Material.h"
using std::vector;

class Component {
public:
	Component(vector<Primitive*> p, vector<Material*> m, Texture *tex, Transformation* trans, bool mult);
	void setCompRef(vector<Component*> c);
	void setPrimRef(vector<Primitive*> p);
	Texture* getTex();
	void act(float texLS, float texLT);
	void nextMat();
private:

	vector<Component*> cref;
	vector<Primitive*> pref;
	Transformation *trans;
	Texture *tex;
	vector<Material*> mats;
	bool multTex;
	int curMat;

};

#endif // Component_h__